package com.sq.partner.manager.service;

import java.util.HashMap;
import java.util.List;

import com.sq.partner.manager.mybatis.model.GatewayRole;
import com.sq.partner.manager.mybatis.model.GatewayUser;
import com.sq.partner.manager.util.Page;

/**
 * 卡用户管理serviec
 * SQ
 *
 */
public interface ActirationCardPowerService {

	/**
	 * 根据name查询角色信息
	 * @param roleName
	 * @return
	 * @throws Exception
	 */
	public List<GatewayRole> queryUserRole(List<String> roleName) throws Exception;
	/**
	 * 删除激活卡相关角色（根据条件）
	 * @param map
	 * @return
	 * @throws Exception
	 */
	public boolean delUserRole(HashMap<String,Object> map)throws Exception;
	/**
	 * 删除激活卡用户，此删除为假删除，只是去除激活卡关联信息
	 * @param user
	 * @param userid
	 * @return
	 * @throws Exception
	 */
	public boolean removeUser(GatewayUser user,GatewayUser operuser) throws Exception;
	/**
	 * 修改人员的归属机构及权限
	 * @param user
	 * @return
	 * @throws Exception
	 */
	public boolean updateUserComPower(GatewayUser user) throws Exception;
	/**
	 * 查询用户列表
	 * @param page
	 * @return
	 * @throws Exception
	 */
	public Page<GatewayUser> queryUser(Page<GatewayUser> page) throws Exception;
	/**
	 * 查询全部激活卡角色
	 * @return
	 * @throws Exception
	 */
	public List<GatewayRole> queryAllRole(String para) throws Exception;
	/**
	 * 查询用户的角色信息
	 * @return
	 * @throws Exception
	 */
	public List<GatewayRole> queryUserRoles(String userid) throws Exception;
	/**
	 * 校验权限（校验是否有该位数权限如果有则返回true），如果没有则返回false
	 * @param powers 用户的权限串
	 * @param checkvalue 校验的位数
	 * @return
	 * @throws Exception
	 */
	public boolean checkPower(String powers,String checkvalue) throws Exception;
}
